Site cover image

Site icon imageSen(Qian)’s Memo

This website is Donglin Qian (Torin Sen)’s memo, especially about machine learning papers and competitive programming.

Rademacher Complexityと一様大数の法則

参考書一覧

  • Foundations of Machine Learning
  • 統計的学習理論(MLPシリーズ)

VC Dimension

モデル=仮説集合 Hが存在し、その中で識別器=仮説 hHh ∈ ℋが存在し、これが二値分類をする。データ xxに対して、ラベル yyがあり、これに分類器 h(x)h(\mathbf{x})の出力ができるだけ合致することが望ましく、それが学習である。モデル Hのなかで、1通りの yyに対応できることを+1として、その個数を ΠH(x1,,xn)Π _ℋ(x_1, ⋯, x_n)とおく。ここで、パラメタは連続値であるので理論上は無限通りのℋのパラメタの取り方が存在するが、同じラベル付けyは1通りとまとめる

データが nn個存在するとして、 2n2^nパターンのラベルの付き方が存在する。これについて、 nnが小さければΠH(x1,,xn)=2nΠ _ℋ(x_1, ⋯, x_n) = 2^nが成り立つ。すなわち、ありうるすべてのラベルの付け方 yyに対して、パラメタを調節すれば必ずそれを実現する識別器 hHh ∈ ℋが存在するということである。

nnが増加していくにあたり、この等式が満たされなくなる=表現力が足りなくなる。この時の最大の nnをVC次元という。

Rademacher Complexity

ラデマッハ複雑度とは、ランダムなノイズに対して学習させるとき、モデルがどれほど追随できるか、という量である。大きいほど表現力が高いモデルである。

ラデマッハ変数という、1/2の確率で+1, 1/2の確率で-1を取る確率変数 σσを考える。厳密には mm個の訓練データ xi\mathbf{x}_iが存在するときのラデマッハ複雑度は以下のように定義する。gは学習器であり、Gは学習器の集合=モデル。

R^(G)=Eσ[supgG1mσig(xi)]=Eσ[supgGσTgxm] \mathcal{\hat{R}}(G) = \mathbb{E} _{\boldsymbol{\sigma}} [ \sup _{g \in G} \frac{1}{m} \sigma _i g(\mathbf{x} _i)] \\\\ = \mathbb{E} _{\boldsymbol{\sigma}} [ \sup _{g \in G} \frac{\boldsymbol{\sigma} ^ T \mathbf{g} _\mathbf{x}}{m} ] 

ここで、有限個 mm個の訓練データで得られた経験的なラデマッハ複雑度は、訓練データを増やした時には、理想的な分布から得られたときと同じ値になる。つまり、不偏推定量

R(G)=limmR^(G)\mathcal{R}(G) = \lim _{m \to \infty} \mathcal{\hat{R}}(G)

Taragrandの補題

R(G)ℛ(G)のなかで、 Gϕ(G)G → ϕ(G)と写像の合成となったときに使える補題。

ϕ:RRϕ : ℝ → ℝであり、リプシッツ連続であるとする。この時、リプシッツ定数 LLであるとして、以下の不等式が成り立つ。

R(ϕ(G))LR(G)ℛ(ϕ(G)) ≤ Lℛ(G)

証明を書く気力はなかった。

McDiarmidの不等式

Pr(f(X1,,XN)E[f(X1,,XN)]ϵ)exp(2ϵ2i=1Nci2)Pr( f(X _1, \cdots, X _N) - \mathbb{E} [ f(X _1, \cdots, X _N) ] \geq \epsilon) \leq \exp( -\frac{2 \epsilon ^ 2}{\sum _{i = 1} ^ N c _i ^ 2})

cic_iは次の条件を満たす。 XiX _iを同じく分布に従う別の確率変数 YYに変えた時、 ffの取る値との差の上界にあたる。

ci=supYf(X1,,Xi1,Xi,Xi+1,,Xn)f(X1,,Xi1,Y,Xi+1,,Xn)c_i = \sup _Y {|f(X_1, ⋯, X_{i − 1}, X_i, X_{i + 1}, ⋯, X_n) − f(X_1, ⋯, X_{i − 1}, Y, X_{i + 1}, ⋯, X_n)|}

ここで、 ffNN変数関数であるが、とりわけ xi\mathbf{x} _iを引数に取って、識別器による経験平均 i=1Ng(xi)\sum _{i = 1} ^ N g(\mathbf{x} _i)である場合を考える。そして、 x,g(x)[a,b]∀\mathbf{x}, g(\mathbf{x}) ∈ [a, b]と識別器の関数の上界が決まっているのであれば、この式は次のように書くことができる。

Pr(i=1Ng(xi)E[g(x)]ϵ)exp(2ϵ2N(ba)2)Pr( \sum _{i = 1} ^ N g(\mathbf{x} _i) - \mathbb{E} [ g(\mathbf{x}) ] \geq \epsilon) \leq \exp( -\frac{2 \epsilon ^ 2 N }{ (b - a) ^ 2})

そして、一般的には 1δ1 − δ以上の確率で○○が成り立つ、という形なので、それに式変形する。

δ=exp(2ϵ2N(ba)2)logδ=2ϵ2N(ba)2(ba)2log(1/δ)=2ϵ2N(ba)22Nlog(1/δ)=ϵ2(ba)log(1/δ)2N=ϵ\delta = \exp( -\frac{2 \epsilon ^ 2 N}{(b - a) ^ 2}) \\\\ \log \delta = - \frac{2 \epsilon ^ 2 N }{(b - a) ^ 2} \\\\ (b - a) ^ 2 \log (1 / \delta) = 2 \epsilon ^ 2 N \\\\ \frac{(b - a) ^ 2}{2N} \log (1 / \delta) = \epsilon ^ 2 \\\\ (b - a) \sqrt{\frac{\log (1 / \delta)}{2N}} = \epsilon

このことから、 δ,1δ∀δ, 1 − δ以上の確率で、下式が成り立つ。

i=1Ng(xi)E[g(x)](ba)log(1/δ)2N\sum _{i = 1} ^ N g(\mathbf{x} _i) - \mathbb{E} [ g(\mathbf{x}) ] \leq (b - a) \sqrt{\frac{\log (1 / \delta)}{2N}}

特に、写す空間が[0, 1]である場合は、以下のように更に略して書ける。

i=1Ng(xi)E[g(x)]log(1/δ)2N\sum _{i = 1} ^ N g(\mathbf{x} _i) - \mathbb{E} [ g(\mathbf{x}) ] \leq \sqrt{\frac{\log (1 / \delta)}{2N}}

一様大数の法則

次に重要な定理として、ラデマッハ複雑度を用いた二値分類識別器 g𝒢g ∈ 𝒢の期待値を上から抑えられ、不偏推定量からたかだかどれほどずれるのかを評価できる。これは一様大数の法則と呼ばれている。 ggは集合 𝒵[a,b]𝒵 → [a,b]への写像。なお、 Z𝒵∀Z ∈ 𝒵に所属している。また、 ZiZ_iはそれぞれ ZZと独立同分布に従う。 δ,1δ∀δ, 1 − δ以上の確率で以下の式が成り立つ。

supgG{E[g(Z)]i=1Ng(Zi)}2RN(G)+(ba)log(1/δ)2N\sup _{g \in \mathcal{G}} \lbrace \mathbb{E} [g(Z)] - \sum _{i = 1} ^ N g(Z _i) \rbrace \leq 2 \mathcal{R} _N (\mathcal{G}) + (b - a) \sqrt{\frac{\log(1 / \delta)}{2N}}

これを絶対誤差で評価した版は以下である。

supgG{E[g(Z)]i=1Ng(Zi)}2RN(G)+(ba)log(2/δ)2N\sup _{g \in \mathcal{G}} \lbrace | \mathbb{E} [g(Z)] - \sum _{i = 1} ^ N g(Z _i) | \rbrace \leq 2 \mathcal{R} _N (\mathcal{G}) + (b - a) \sqrt{\frac{\log(2 / \delta)}{2N}}
証明

A(z1,,zn)=supgG{E[g(Z)]1Ni=1Ng(zi)}A(z _1, \cdots, z _n) = \sup _{g \in \mathcal{G}} \lbrace \mathbb{E} [ g(Z) ] - \frac{1}{N} \sum _{i = 1} ^ N g(z _i) \rbraceとする。

ここで、 ZnZ_nZZ ^ \primeとなるとする(同様に𝒵に従う値)。この時、1つだけ変更したとき、上界は以下のようになる。中でのsupは、外の符号が負なので、一番外に出すと最小値のinfになる。infに関しては ffでなくても、 ggにするとinfじゃなくなって少し大きくなるので、符号は≤となれる。

A(z1,,zn)A(z1,,z)=supgG{E[g(Z)]1ni=1ng(zi)inffG{E[f(Z)]1ni=1n1f(zi)1nf(z)}}=supgGinffG{E[g(Z)]1ni=1ng(zi)E[f(Z)]+i=1n1f(zi)+1nf(z)}supgG{E(g(Z))1ni=1ng(zi)E[g(Z)]1ni=1n1g(zi)+1ng(z)}=supgG{g(z)g(zn)n}=banA(z _1, \cdots, z _n) - A(z _1, \cdots, z ^ \prime) = \sup _{g \in \mathcal{G}} \lbrace \mathbb{E} [g(Z)] - \frac{1}{n} \sum _{i = 1} ^ n g(z _i) - \inf _{f \in \mathcal{G}} \lbrace \mathbb{E} [f(Z)] - \frac{1}{n} \sum _{i = 1} ^ {n - 1} f(z _i) - \frac{1}{n} f(z ^ \prime) \rbrace \rbrace \\\\ = \sup _{g \in \mathcal{G}} \inf _{f \in \mathcal{G}} \lbrace \mathbb{E} [g(Z)] - \frac{1}{n} \sum _{i = 1} ^ n g(z _i) - \mathbb{E} [f(Z)] + \sum _{i = 1} ^ {n - 1} f(z _i) + \frac{1}{n} f(z ^ \prime) \rbrace \\\\ \leq \sup _{g \in \mathcal{G}} \lbrace \mathbb{E} (g(Z)) - \frac{1}{n} \sum _{i = 1} ^ n g(z _i) - \mathbb{E} [ g(Z) ] - \frac{1}{n} \sum _{i = 1} ^ {n - 1} g(z _i) + \frac{1}{n} g(z ^ \prime) \rbrace \\\\ = \sup _{g \in \mathcal{G}} \lbrace \frac{g(z ^ \prime) - g(z _n)}{n} \rbrace = \frac{b - a}{n}

これにより、マルチンゲールは (ba)/n(b − a)/nとなる。これはどの iiに対しても成り立ち、しかも A(z1,,z)A(z1,,z)banA(z _1, \cdots, z ^ \prime) - A(z _1, \cdots, z ^ \prime) \leq \frac{b - a}{n}も成り立つので、全体で言うと

g(z)g(zn)nban|\frac{g(z ^ \prime) - g(z _n)}{n}| \leq \frac{b - a}{n}

このことから、先ほどのMcDiarmidの不等式を用いると以下のような集中不等式を得られる。 δ,1δ∀δ, 1 − δ以上の確率で、以下が成り立つ。A自体に対して不等式を適用しているということに注目A(z1,,zn)=supgGE[g(Z)]1ni=1ng(zi)A(z _1, \cdots, z _n) = \sup _{g \in \mathcal{G}} \mathbb{E} [g(Z)] - \frac{1}{n} \sum _{i = 1} ^ n g(z _i)であり、この中の ggに対してMcDiarmidの不等式を適用するのではない!なお、普通に ggで不等式を使うと、 𝔼[g]𝔼[g]の評価ができなくなるので、このような評価できるかたちで不等式を使った。

A(Z1,,Zn)E[A](ba)log(1/δ)2nA(Z _1, \cdots, Z _n) - \mathbb{E} [A] \leq (b - a) \sqrt{\frac{\log(1 / \delta)}{2n}}

次に、 Z1,,ZnZ_1, ⋯, Z_nのみならず、 Z1,,ZnZ_1 ^ ′, ⋯, Z_n^′𝒵𝒵に従う確率変数とする。これを使えば、 𝔼[g]𝔼[g]nn個の確率変数に分割できる。つぎに、期待値を外に出すことで、≤の形を作れる。

A(Z1,,Zn)=supgG{E[g(Z)]1ni=1ng(Zi)}=supgG{EZ1,,Zn[1ni=1ng(Zi)]1ni=1ng(Zi)}EZ1,,Zn[supgG{1ni=1ng(Zi)1ni=1ng(Zi)}]=EZ1,,Zn[i=1nsupgG{1n(g(Zi)g(Zi))}]A(Z _1, \cdots, Z _n) = \sup _{g \in \mathcal{G}} \lbrace \mathbb{E} [ g(Z) ] - \frac{1}{n} \sum _{i = 1} ^ n g(Z _i) \rbrace \\\\ = \sup _{g \in \mathcal{G}} \lbrace \mathbb{E} _{Z _1 ^ \prime, \cdots, Z _n ^ \prime} [\frac{1}{n} \sum _{i = 1} ^ n g(Z _i ^ \prime)] -\frac{1}{n} \sum _{i = 1} ^ n g(Z _i) \rbrace \\\\ \leq \mathbb{E} _{Z _1 ^ \prime, \cdots, Z _n ^ \prime} [ \sup _{g \in \mathcal{G}} \lbrace \frac{1}{n} \sum _{i = 1} ^ n g(Z _i ^ \prime) - \frac{1}{n} \sum _{i = 1} ^ n g(Z _i) \rbrace ] \\\\ = \mathbb{E} _{Z _1 ^ \prime, \cdots, Z _n ^ \prime} [ \sum _{i = 1} ^ n \sup _{g \in \mathcal{G}} \lbrace \frac{1}{n} (g(Z _i ^ \prime) - g(Z _i) )\rbrace ]

ここで、対称性により、 g(Zi)g(Zi)g(Z_i) − g(Z_i^′)g(Zi)g(Zi)g(Z_i^′) − g(Z_i)も同じ分布を持っている(同じ 𝒵𝒵から来ているし、 ggも1つである)。だから、符号を自由にflipさせてもいいということになる!符号を自由にflipさせるというのならば、まさにラデマッハ変数じゃないか!あとは三角不等式で評価すればラデマッハ複雑度が出てくる!

E[A(z1,,zn)]=EZ1,,Zn[supgG{E[g(Z)]1ni=1ng(zi)}]EZ1,,Zn[EZ1,,Zn[supgG{1n(g(Zi)g(Zi))}]]Eσ1,,σn[EZ1,,Zn[EZ1,,Zn[supgG{σin(g(Zi)g(Zi))}]]]=EZ1,,Zn[EZ1,,Zn[Eσ1,,σn[supgG{σin(g(Zi)g(Zi))}]]]EZ1,,Zn[Eσ1,,σn[supgG{σing(Zi)}]]+EZ1,,Zn[Eσ1,,σn[supgG{σing(Zi)}]]Rn(G)+Rn(G)=2Rn(G)\mathbb{E} [ A(z _1, \cdots, z _n) ] = \mathbb{E} _{Z _1, \cdots, Z _n} [ \sup _{g \in \mathcal{G}} \lbrace \mathbb{E} [ g(Z) ] - \frac{1}{n} \sum _{i = 1} ^ n g(z _i) \rbrace ] \\\\ \leq \mathbb{E} _{Z _1, \cdots, Z _n} [ \mathbb{E} _{Z _1 ^ \prime, \cdots, Z _n ^ \prime} [ \sup _{g \in \mathcal{G}} \lbrace \frac{1}{n} (g(Z _i ^ \prime) - g(Z _i) )\rbrace ] ] \\\\ \leq \mathbb{E} _{\sigma _1, \cdots, \sigma _n} [\mathbb{E} _{Z _1, \cdots, Z _n} [ \mathbb{E} _{Z _1 ^ \prime, \cdots, Z _n ^ \prime} [ \sup _{g \in \mathcal{G}} \lbrace \frac{\sigma _i}{n} (g(Z _i ^ \prime) - g(Z _i) )\rbrace ] ] ] \\\\ = \mathbb{E} _{Z _1, \cdots, Z _n} [ \mathbb{E} _{Z _1 ^ \prime, \cdots, Z _n ^ \prime} [ \mathbb{E} _{\sigma _1, \cdots, \sigma _n} [\sup _{g \in \mathcal{G}} \lbrace \frac{\sigma _i}{n} (g(Z _i ^ \prime) - g(Z _i) )\rbrace ] ] ] \\\\ \leq \mathbb{E} _{Z _1 ^ \prime, \cdots, Z _n ^ \prime} [ \mathbb{E} _{\sigma _1, \cdots, \sigma _n} [\sup _{g \in \mathcal{G}} \lbrace \frac{\sigma _i}{n} g(Z _i ^ \prime) \rbrace ] ] + \mathbb{E} _{Z _1, \cdots, Z _n} [\mathbb{E} _{\sigma _1, \cdots, \sigma _n} [\sup _{g \in \mathcal{G}} \lbrace \frac{-\sigma _i}{n} g(Z _i )\rbrace ] ] \\\\ \leq \mathcal{R} _n(\mathcal{G}) + \mathcal{R} _n(\mathcal{G}) = 2 \mathcal{R} _n(\mathcal{G})

このように、上から評価できた!

これを使えば、先ほどのMcDiarmidの不等式から以下の結果が得られる。これこそが、一様大数の法則。

A(Z1,,Zn)=supgG{E[g(Z)]i=1ng(Zi)}2Rn(G)+(ba)log(1/δ)2nA(Z _1, \cdots, Z _n) = \sup _{g \in \mathcal{G}} \lbrace \mathbb{E} [g(Z)] - \sum _{i = 1} ^ n g(Z _i) \rbrace \leq 2 \mathcal{R} _n (\mathcal{G}) + (b - a) \sqrt{\frac{\log(1 / \delta)}{2n}}

絶対値版に対しては、ここまでの議論で δδとしていたものを δ/2δ/2に置き換えると、以下の2つの式が得られる。いずれも δ,1δ/2∀δ, 1 − δ/2以上の確率で成立する。

supgG{E[g(Z)]i=1ng(Zi)}supgG{E[g(Z)]i=1ng(Zi)}2Rn(G)+(ba)log(1/δ)2nsupgG{i=1ng(Zi)E[g(Z)]}supgG{E[g(Z)]i=1ng(Zi)}2Rn(G)+(ba)log(1/δ)2n\sup _{g \in \mathcal{G}} \lbrace \mathbb{E} [g(Z)] - \sum _{i = 1} ^ n g(Z _i) \rbrace \leq \sup _{g \in \mathcal{G}} \lbrace |\mathbb{E} [g(Z)] - \sum _{i = 1} ^ n g(Z _i)| \rbrace \leq 2 \mathcal{R} _n (\mathcal{G}) + (b - a) \sqrt{\frac{\log(1 / \delta)}{2n}} \\\\ \sup _{g \in \mathcal{G}} \lbrace \sum _{i = 1} ^ n g(Z _i) - \mathbb{E} [g(Z)] \rbrace \leq \sup _{g \in \mathcal{G}} \lbrace |\mathbb{E} [g(Z)] - \sum _{i = 1} ^ n g(Z _i)| \rbrace \leq 2 \mathcal{R} _n (\mathcal{G}) + (b - a) \sqrt{\frac{\log(1 / \delta)}{2n}}

この2つの式を足し合わせる事で、2で割ると (1δ/2)2=1δ+(δ2/4)1δ(1 − δ/2)^2 = 1 − δ + (δ^2/4) ≥ 1 − δ以上の確率で、

supgG{E[g(Z)]i=1ng(Zi)}2Rn(G)+(ba)log(1/δ)2n \sup _{g \in \mathcal{G}} \lbrace |\mathbb{E} [g(Z)] - \sum _{i = 1} ^ n g(Z _i)| \rbrace \leq 2 \mathcal{R} _n (\mathcal{G}) + (b - a) \sqrt{\frac{\log(1 / \delta)}{2n}}